package com.agentai.system.mapper;

import com.agentai.framework.common.dict.DictModel;
import com.agentai.framework.mybatis.mapper.AgentBaseMapper;
import com.agentai.system.entity.SysDictDataEntity;
import com.agentai.system.vo.SysDictVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.List;

/**
 * 字典数据
 */
@Mapper
public interface SysDictDataMapper extends AgentBaseMapper<SysDictDataEntity> {

    @Select("${sql}")
    List<SysDictVO.DictData> getListForSql(@Param("sql") String sql);


    /**
     * 通过字典code获取字典数据
     *
     * @param code
     * @param key
     * @return
     */
    String queryDictTextByKey(@Param("code") String code, @Param("key") String key);


    /**
     * 通过字典code获取字典数据
     *
     * @param code 字典code
     * @return List<DictModel>
     */
    List<DictModel> queryDictItemsByCode(@Param("code") String code);

    /**
     * 查询有效的数据字典项
     *
     * @param code
     * @return
     */
    List<DictModel> queryEnableDictItemsByCode(@Param("code") String code);
}
